using System;

namespace Needle.Framework
{
    /// <summary>
    /// provides started and stopped events.
    /// </summary>
    public interface INotifyStarted : IStartable
    {
        /// <summary>
        /// Raised when the service is started.
        /// </summary>
        event EventHandler Started;

        /// <summary>
        /// Raised when the service is stopped.
        /// </summary>
        event EventHandler Stopped;

        /// <summary>
        /// true if the component has been started.
        /// </summary>
        bool IsStarted { get; }

    }

}
